package com.htthorizon.model.service;

import cn.hutool.core.date.DateTime;
import com.github.pagehelper.IPage;
import com.github.pagehelper.Page;
import com.htthorizon.common.core.web.page.TableDataInfo;
import com.htthorizon.model.domain.ModelMessage;
import com.htthorizon.model.request.ModelMessageAddReq;
import com.htthorizon.model.request.ModelMessageForward;
import com.htthorizon.model.request.ModelMessageReply;
import com.htthorizon.model.request.ModelMessageSearchReq;
import com.htthorizon.model.response.ModelMessageVo;

import java.util.List;

public interface IModelMessageService {
    boolean addMessage(ModelMessageAddReq search);

    ModelMessageVo getById(Long id);

    boolean reply(ModelMessageReply modelMessageReply);

    boolean nextUser(ModelMessageForward modelMessageForward);

    boolean del(Long id);

    TableDataInfo getPage(Page<ModelMessageVo> pages, ModelMessageSearchReq search, TableDataInfo tableDataInfo);

    List<ModelMessage> queryTimeLimit(DateTime date, DateTime lastMonth);
}
